<?php
	require_once 'ServingPeriod.php';
	//
	class ImpressionCap
	{
		public const UNLIMITED = 0;
		public const LIMITED = 1;
		//
		private $sType;
		private $uValue;
		private $spEffectiveTime;
		private $bAllowOverDelivery;
		private $sDefImg;
		//
		public function __construct()
		{
			$this->setDefaultImage('');
			$this->setType(ImpressionCap::UNLIMITED);
			$this->setValue(0);
			$this->setEffectiveTime(new ServingPeriod());
			$this->setAllowOverDelivery(true);
		}
		public function setDefaultImage($value){$this->sDefImg = $value;}
		public function getDefaultImage(){return $this->sDefImg;}
		//
		public function setAllowOverDelivery($value)
		{
			$this->bAllowOverDelivery = $value;
		}
		public function getAllowOverDelivery()
		{
			return $this->bAllowOverDelivery;
		}
		//
		public function setType($value){$this->sType = $value;}
		public function getType(){return $this->sType;}
		//
		public function setValue($value){$this->uValue = $value;}
		public function getValue(){return $this->uValue;}
		//
		public function setEffectiveTime($value)
		{
			$this->spEffectiveTime = $value;
		}
		public function getEffectiveTime()
		{
			return $this->spEffectiveTime;
		}
	}
?>